# 递归函数：阶乘计算
def factorial(n):
    # 基线条件：当 n 为 0 或 1 时，阶乘为 1
    if n == 0 or n == 1:
        return 1
    # 递归条件：n! = n * (n-1)!
    else:
        return n * factorial(n - 1)


# 测试
print(factorial(5))  # 输出：120
